]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
BluetoothStatus: depend more on libgnome-bluetooth-applet
authorGiovanni Campagna <gcampagna@src.gnome.org>
Mon, 24 Jan 2011 17:39:45 +0000 (18:39 +0100)
committerOwen W. Taylor <otaylor@fishsoup.net>
Sat, 26 Mar 2011 01:39:22 +0000 (21:39 -0400)
Ensure that a dependency is generated even when using --as-needed,
by adding a fake function that calls into the library.

https://bugzilla.gnome.org/show_bug.cgi?id=639324

Was accidentally removed, as part of the switch to building
a gnome-shell binary, reapplying the original patch. - Owen

https://bugzilla.gnome.org/show_bug.cgi?id=645596

src/gnome-shell-plugin.c

index b922ca39c56fc93261100695a919c278e0fbf5ea..1b2ccf69e4d10d7bdf9be8b884bdd633a676f868 100644 (file)
@@ -366,3 +366,17 @@ MetaPluginInfo *gnome_shell_plugin_plugin_info (MetaPlugin *plugin)
 
   return &info;
 }
+
+#if HAVE_BLUETOOTH
+/* HACK:
+   Add a non-static function that calls into libgnome-bluetooth-applet.so,
+   to avoid the linker being too smart and removing the dependency.
+   This function is never actually called.
+*/
+extern GType bluetooth_applet_get_type(void);
+void _shell_link_to_bluetooth(void);
+
+void _shell_link_to_bluetooth(void) {
+  bluetooth_applet_get_type();
+}
+#endif